Generating a highly condensed visual summary

ABSTRACT

In one embodiment, the present invention extracts video regions of interest from one or more videos and generates a highly condensed visual summary of the videos. The video regions of interest are extracted based on to energy, movement, face or other object detection methods, associated data or external input, or some other feature of the video. In another embodiment, the present invention extracts regions of interest from images and generates highly condensed visual summaries of the images. The highly condensed visual summary is generated by laying out germs on a canvas and then filling the spaces between the germs. The result is a visual summary that resembles a stained glass window having cells of varying shape. The germs may be laid out by temporal order, color histogram, similarity, according to a desired pattern, size, or some other manner. The people, objects and other visual content in the germs appear larger and become easier to see. The visual summary of the present invention utilizes important regions within the key frames, leading to more condensed summaries that are well suitable for small screens.

CROSS REFERENCE TO RELATED APPLICATIONS

The present application is related to the following United Statespatents and patent applications, which patents/applications are assignedto the owner of the present invention, and which patents/applicationsare incorporated by reference herein in their entirety:

U.S. patent application Ser. No. 10/______, entitled “EXTRACTING VIDEOREGIONS OF INTEREST”, filed on Mar. 31, 2004, Attorney Docket No.FXPL-01093US0, currently pending.

FIELD OF THE INVENTION

The current invention relates generally to digital image displaysystems, and more particularly to generating a highly condensed visualsummary of video and images.

BACKGROUND OF THE INVENTION

With more and more digital images, video and multimedia content beingcreated, people want to be able to access this content using more typesof devices, including cell phones, PDAs, notebook computers, laptopcomputers, and other mobile devices, as well as non-mobile devices suchas desktop computers, work stations, and other devices having or incommunication with a monitor of some sort. With regard to mobiledevices, it is challenging to browse video on small wireless mobiledevices such as PDAs and cell phones. Typically, the small screenrestricts how much content can be displayed.

Existing techniques for visualizing video summaries are not designed forsmall screens and do not work well on them. As a result, visualsummaries typically do not work well on smaller screens, such as thesefound on mobile devices. One popular method is to use a storyboard witha number of important key frames extracted from the video using contentanalysis algorithms. An example of a storyboard display is illustratedin FIG. 1. The layout may have same-sized images or different-sizedimages. When viewed on a small screen, it is difficult to see what is inthe images. What is needed is a system and method for generating avisual video summary that overcomes the shortcomings and disadvantagesof the prior art.

SUMMARY OF THE INVENTION

In one embodiment, the present invention extracts video regions ofinterest from one or more videos and generates a highly condensed visualsummary of the videos. The video regions of interest are extracted basedon energy, movement, face or other object detection methods, associateddata or external input, or some other feature of the video. In anotherembodiment, the present invention receives or extracts germs of interestfrom images and generates highly condensed visual summaries of theimages.

In one embodiment, the region of interest is comprised of two parts, agerm and a support. The highly condensed visual summary is generated bylaying out germs on a canvas and then filling the spaces between thegerms. The result is a visual summary that resembles a stained glasswindow having sections of varying shape. The germs may be laid out bytemporal order, color histogram, similarity, according to a desiredpattern, size, or some other manner. The people, objects and othervisual content in the germs appear larger and become easier to see. Inone embodiment of the present invention, the irregular shaped cellboundaries result from a Voronoi-based algorithm for filling the spacesbetween the packed germs.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is an illustration of a storyboard summary of videos using keyframes in accordance with the prior art.

FIG. 2 is an illustration of method for extracting video regions andgenerating a highly condensed visual summary of the video in accordancewith one embodiment of the present invention.

FIG. 3 is an illustration of a method for finding regions of interest invideo in accordance with one embodiment of the present invention.

FIG. 4 is an illustration of a video represented in x-y-t space inaccordance with one embodiment of the present invention.

FIG. 5 is an illustration of a method for laying out germs in accordancewith one embodiment of the present invention.

FIG. 6A is an illustration of a germ in accordance with one embodimentof the present invention.

FIG. 6B is an illustration of a germ and the germ's support inaccordance with one embodiment of the present invention.

FIG. 7 is an illustration of a canvas containing germs in accordancewith one embodiment of the present invention.

FIG. 8 is an illustration of a canvas having Voronoi regions containinggerms in accordance with one embodiment of the present invention.

FIG. 9 is an illustration of a highly condensed visual summary of videoin accordance with one embodiment of the present invention.

FIG. 10 is an illustration of a highly condensed visual summary of videoin accordance with one embodiment of the present invention.

FIG. 11 is an illustration of a highly condensed visual summary of videoin accordance with one embodiment of the present invention.

FIG. 12 is an illustration of different distance function measurementsin accordance with one embodiment of the present invention.

FIG. 13 is an illustration of a highly condensed visual summary of videoin accordance with one embodiment of the present invention.

FIG. 14 is an illustration of a highly condensed visual summary of videoin accordance with one embodiment of the present invention.

FIG. 15 is an illustration of a highly condensed visual summary ofimages in accordance with one embodiment of the present invention.

FIG. 16 is an illustration of a highly condensed visual summary ofimages with uniform face sizes in accordance with one embodiment of thepresent invention.

FIG. 17 is an illustration of a highly condensed visual summary ofimages with varied face sizes in accordance with one embodiment of thepresent invention.

FIG. 18 is an illustration of a highly condensed visual summary ofimages with highlighted distance measurements in accordance with oneembodiment of the present invention.

DETAILED DESCRIPTION

In one embodiment, the present invention extracts video regions ofinterest from one or more videos and generates a highly condensed visualsummary of the videos. The video regions of interest are extracted basedon energy, movement, face or other object detection methods, associateddata or external input, or some other feature of the video. In anotherembodiment, the present invention receives or extracts germs of interestfrom images and generates highly condensed visual summaries of theimages.

In one embodiment, the region of interest is comprised of two parts, agerm and a support. The highly condensed visual summary is generated bylaying out germs on a canvas and then filling the spaces between thegerms. The result is a visual summary that resembles a stained glasswindow having sections of varying shape. The germs may be laid out bytemporal order, color histogram, similarity, according to a desiredpattern, size, or some other manner. The people, objects and othervisual content in the germs appear larger and become easier to see. Inone embodiment of the present invention, the irregular shaped cellboundaries result from a Voronoi-based algorithm for filling the spacesbetween the packed germs. The visual summary of the present inventionutilizes important sub-regions within the key frames, leading to morecondensed summaries that are well suitable for small screens.

Generation of the Visual Summary

A method 200 for extracting video regions and generating a highlycondensed visual summary is illustrated in FIG. 2. Method 200 beginswith start step 205. Next, video is segmented into segments at step 210.Regions of interest are then determined from the video segments at step220. Once the regions are determined, the regions of high importance arelaid out onto a canvas at step 230. Then, the spaces between regions ofhigh importance are filled at step 240 and method 200 ends at step 245.Each of these operations is discussed in more detail below.

Segmenting Video into Clips

The video may be segmented into one or more segments using a variety ofmethods. A video consists of consecutive frames of images. In oneembodiment, the video is segmented into video segments so that each clipconsists of successive frames that are similar. This can be done usingstandard techniques such as color histograms, user input, or some othermeans. Another technique is use of available camera on/off informationto determine the temporal boundaries of the video segment, therebyproviding true shot boundaries that can help produce better segments.

In one embodiment, a granularity for subsampling the video frame imagesmay be set. The sampling rate may be chosen based on the application,the processing power available, the specifications of the device toprovide the condensed summary, and other features. In one embodiment,for common usage and easy display in mobile devices, a fairly lowsampling rate of 16 pixels along the width and 12 pixels along theheight per video image may be used. Additionally, the images may besmoothed to reduce the noise.

Find Regions of Interest

After the video is segmented into one or more video segments in step 210of method 200, the regions of interest are determined in the videoclips. Method 300 of FIG. 3 illustrates a process for finding regions ofinterest in accordance with one embodiment of the present invention.Method 300 begins with start step 305. Next, regions of interest aredetermined within the video segment at step 310. A video can be regardedas a three dimensional volume in x-y-t space. An exemplaryrepresentation of a three dimensional volume of video is shown in FIG.4. As shown, video segment 410 may consist of a first frame 440 andseveral successive frames along the t axis. A region may becharacterized as a subset three dimensional region within the x-y-zspace of the three dimensional video segment 410. The regions 420 and430 are located within three dimensional volume of video 410.

Regions of interest may be determined in many ways. In one embodiment, aregion may be determined to be a three dimensional space havingrelatively high activity or kinetic energy. Several methods may also beused to determine the energy or activity of a region. In one embodiment,to measure energy, a velocity field may be computed. In this case, eachsampled pixel is assigned a velocity. The velocity can be obtained bycalculating the change in the luminance between video frames. In oneembodiment, the velocity change may be computed from change in thet-component of the velocity. In another embodiment, the change invelocity may be computed from the change in luminance using all the x,y, and t components. In this case, computing velocity from all thecomponents requires more processing but is likely to produce betterresults.

In one embodiment, it may be desirable to determine the change inluminance or velocity using the residual motion of a region. Residualmotion is the resulting motion after the motion of the camera or thebackground motion has been removed or subtracted. There are varioustypes of camera motion such as pan, tilt and zoom, and methods to detectthese types have been developed. In one embodiment, the residual motionmay be determined by subtracting the average motion of the frame fromthe change in motion for the particular pixel.

Next in method 300, for each pixel (in x-y-t space) in the videosegment, the magnitude of the velocity for each pixel in the region ofinterest is assigned a value at step 320. In one embodiment, the valuemay be assigned to lie within a pixel range. The pixel range may beselected based upon the processing power and the desired detail of theregions to be generated. In another embodiment, the magnitude of thevelocity may be quantized to within a range of binary values of zero andone. In the embodiment using a binary range of zero and one, pixelshaving a magnitude above average (above the average of all the sampledpixel magnitudes in the particular video segment) may be set to one andthe remainder of the pixels may be set to zero. In this embodiment, theanalysis and processing may be focused on the set of pixels with a valueof one, thereby reducing the computation time substantially.

Next, groups are constructed from the one-valued pixels at step 330 ofmethod 300. In one embodiment, the regions are constructed by groupingneighboring one-pixels. For two dimensional bitmap images, at eachiteration, pixels that are within a small distance to a one-value pixelare turned into a one-value pixel. The small distance may depend on theapplication; it is typically one pixel, but may be any range, includingbut not limited to one to five pixels. However, any number of pixels orrange may be used to group nearby one-value pixels. After some number ofiterations, groups or “blobs” of one-value pixels appear. These groupscan have highly irregular shapes. Computationally, this is much moreexpensive for a three dimensional volume associated with a video.Furthermore, during the region construction process and later in thelayout step, geometric properties such as intersection and containmentof regions are obtained, and algorithms for these computations are morecomplex in three dimensions than two dimensions as well.

After groups are constructed in step 330, operation continues to step340 wherein larger groups are formed by merging one-pixel groups. In oneembodiment, rectangular shaped boxes are used to represent the regionsof high importance. Rectangular shaped regions are discussed herein forpurposes of illustration only, and it is intended that regions may begrouped and constructed in any shape or combination of shapes. Toconstruct regions of high importance, adjacent one-pixel groupsconstructed from step 330, which are degenerate boxes, are merged into alarger group at step 340.

In one embodiment, if two one-pixel groups are adjacent, they are mergedinto a larger group, thereby forming a region of high importance,provided that they don't fail one or more stopping conditions. In thisembodiment, the stopping conditions keep the groups from spreading toothin. Stopping conditions within the scope of the present invention maybe based on energy density, volume, and other characteristics. In oneembodiment, the resulting larger group is in the shape of the smallestthree dimensional rectangular box that contains both smaller groups ofone-pixels. Rectangular shaped groups are discussed herein for examplepurposes only. Regions may be constructed and grouped in any shape orusing many types of formulas. After the one-pixel groups are merged atstep 340, operation of method 300 ends a step 345.

As discussed above, the stopping conditions may be based on manycharacteristics. One such characteristic is energy density. In oneembodiment of the present invention, the energy density should not beallowed to decrease beyond a certain threshold after a merge such asthat performed at step 340. For example, the density of a group A may berepresented by d(A), which is the number of 1-pixels in group A dividedby the total number of pixels contained in the bounding box of A.

The density of a neighboring group B may similarly represented by d(B).The average density of the whole video segment may be represented byd(W). In this case, the two groups A and B can be merged into group C ifd(C)>d(W). Comparing the energy density of the merged group to theaverage energy density is for exemplary purposes only. Other thresholdsfor energy density can be used and are intended to be within the scopeof the present invention.

In another embodiment, the volume of a merged group should not expandbeyond a certain threshold when two or more groups are merged asperformed at step 340 in method 300. For example, the volume of abounding box for a group A may be represented as v(A). Similarly, thebounding box for a group B may be represented as v(B). For groups A andB, their intersection can be represented as K. In this case, ifv(K)/v(A)<½ and v(K)/v(B)<½, A and B may not be merged. Comparing thevolume of the intersection of two merged groups to each of the groups isfor exemplary purposes only. Other volume comparisons can be used andare intended to be within the scope of the present invention.

In one embodiment, the result of the iterative merging process may becompared to a forest of trees, where each tree represents a group, andthe leaves of the tree are 1-pixels. The trees are not binary; each nodecan have more than two children. The bounding box of each tree is aregion.

Layout the Regions of High Importance

In method 200 of FIG. 2, after finding the regions of interest in thevideo clips at step 220, the next step 230 is to layout the germs. Atthis stage in operation of method 200, the video has been segmented intosegments such as segment 410 in FIG. 4 and, for each segment, groups orregions of high importance have been computed, such as groups or regions420 and 430. The process of generating a layout from the groups of highimportance is illustrated by method 500 of FIG. 5. Method 500 beginswith start step 505. Next, the dominant groups in one or more segmentsare determined at step 510. In a segment, there is often a singledominant group. In one embodiment, the dominant groups are the areaswith the most energy, motion, or volume, or are important for otherreasons. For example, for a video of a presentation, the dominant groupsmay include a person at a podium talking and gesturing, and peoplesitting in a section of the room moving around. The dominant groups fromeach clip of the video are selected to be laid out.

A key frame is then defined for each video segment at step 520. In oneembodiment, the first frame of each segments is taken to be the keyframe. However, key frames may be determined in a variety of ways, allconsidered to be within the scope of the present invention.

Next in method 500, a germ and support are defined for each dominantgroup at step 530. In one embodiment, each group is associated with tworectangles that determine the layout: (1) the group's three dimensionalbounding box, and (2) the key frame image's two dimensional boundingbox. With these rectangles in mind, a germ may be considered the x-yprojection of the group onto the key frame. A germ's support is theimage content area that surrounds the germ in the key frame.

FIG. 6A and 6B illustrate a germ and the germ's support, respectively,in accordance with one embodiment of the present invention. In FIG. 6A,the key frame image bounding box 610 encompasses the germ image 614 andthe space occupied by the germ's support 612. In the embodimentillustrated in FIG. 6A and 6B, the germ is a sub-area of the key frame.Note that the germ's support 612 in FIG. 6A is blank to illustrate thespace it resides in. FIG. 6B illustrates the germ and the supporttogether in space 620. FIGS. 6A and 6B represent examples of germs andgerm supports that are shaped as rectangles for illustrative purposesonly. In another embodiment, the germ and support can be irregularlyshaped. In yet another embodiment, the germ's support may be extendedbeyond the key frame's bounds using techniques such as video mosaicalgorithms to create larger panoramic images. It is intended that germsand germ supports can be any shape, similar or different from eachother, static or varying, in accordance with the present invention.

Optionally, once the germs are selected, the ordering of the germs maythen be determined (not shown in method 500). The ordering of the germsmay be determined in any of numerous ways, including temporal, size,color characteristic, content, or by other data derived from orassociated with the particular germ.

A scale factor is then determined for the dominant regions at step 540.In one embodiment, the scale factor corresponds to the maximum scalefactor for the germs such that the germs can be placed in rows orcolumns that fill up the canvas. The scale factor can be iterativelyadjusted until the most desirable scaling is achieved. In oneembodiment, the same scaling factor is applied to all the germs to bedisplayed. In another embodiment, the scaling factor may differ amonggerms. In any case, the scaling factor determination at step 540 may beperformed separately from the line break determination step 550 as shownin method 500 or at the same time.

Next, line breaks are determined at step 550 for the placing of theregions on the canvas or display page. In one embodiment, this isanalogous to laying out a paragraph of text with word-wrap, such thatthe text “wraps” around the size of the page showing the text. In anembodiment wherein the germs are placed in horizontal rows, the linebreaks are chosen so that the packing of the germs, line by line fromleft to right, results in a packing whose bounding space is closest tothe aspect ratio of the canvas shape. An example of a canvas 700 thatwith a layout of germs having line breaks is illustrated in FIG. 7.Canvas 700 includes germs, including germ 710, 720 and 730, andbackground 740. The germs are broken into three rows, each having three,two and three germs, respectively. In another embodiment, instead ofdetermining line breaks one row at a time, it is feasible for smallnumbers N of germs to exhaustively list all combinations of placing themin 1 to N rows. For each combination, a quality measure such as the sizeof the covered area can be determined, and the best combination can bepicked. In another embodiment, the germs may be placed in verticalcolumns, in rows of concentric circles, or in any other manner wherein aplurality of ordered germs require “breaks” in order to be displayed ona page.

At step 560, it is determined whether the layout is acceptable. In oneembodiment, the layout is acceptable if the scale factor is the largestmagnitude that allows all germs to be displayed on the canvas. If thelayout is not acceptable, then operation of method 500 continues to step540. If the layout is acceptable, then operation continues to step 570.

At step 570, cell height and width are set. In one embodiment, the germsare spaced out horizontally on those lines that have extra space on theright, and moved as close as possible to the center of the line alongthe vertical direction. This spacing and centering is constrained by thegerms' supports. In one embodiment, the canvas should be covered as muchas possible by the supports. An example in accordance with oneembodiment of the present invention is illustrated by canvas 800 in FIG.8. Canvas 800 includes several germs, including germs 810, 820, 830 and840. Note that the upper right germ 840 is not centered vertically onthe line because its support cannot cover enough space above it. Theresult is a tight packing for that germ.

Finally, to get closer to the canvas aspect ratio, the lines may bespaced farther apart provided that the support can cover the gaps. Inanother embodiment of the present invention, the germs can be scaled tocover all or some of the gaps on the canvas. In another embodiment ofthe present invention, the canvas can allow for gaps. After the cellheight and width is fit to the canvas at step 570, operation of method500 ends at step 575.

Fill the Spaces Between Regions

Once the layout of germs is completed at step 230 in method 200, thespaces between the germs are filled at step 240. In one embodiment, thespaces between regions are filled according to the Voronoi regions ofthe germs. The Voronoi regions partition the canvas into disjoint areascorresponding to the germs: a point (x, y) on the canvas belongs to thegerm closest to it. When this point belongs to the support of thenearest germ, the pixel is assigned the same value as the correspondingpixel of the germ's support. If the nearest germ's support does notencompass the (x,y) point, the Voronoi region is not used and the nextnearest germ whose support contains the (x,y) point is used to fill thepoint (the pixel is assigned the value of the next nearest germ whosesupport includes the point). If no germs include the point, the pixelcan be assigned an average of nearby pixel values, a canvas backgroundcolor, or some other value.

In one embodiment, to delineate the images in the visualization, bordersmay be placed around the areas from different germ and support areas. Anexample of a canvas 800 with highlighted germ and support areaboundaries is illustrated in FIG. 8. Canvas 800 includes germs 810, 820,830 and 840, germ cell line 850, and area border line 860. As shown, theboundary line 860 is placed around germ 830 and part of the support forgerm 830.

After all the points on the canvas are either filled according toVoronoi regions, other nearby supports, or background, the canvas iscomplete. Operation of method 200 then ends at step 245. An example of acomplete canvas 900 is illustrated in FIG. 9. More examples of canvasesthat implement different aspect ratios are shown in FIG. 10 and FIG. 11.In each of FIGS. 10 and 11, the germs are circumscribed by boxes such as1010, 1020, 1110 and 1120, respectively, for purposes of illustration.

Voronoi diagrams often use distances from points. In differentembodiments, the distances from the germ may be used. Another embodimentuses the distance between a point and the closest border of the germ.Using different distance functions during the fill process can generatedifferent shaped regions on a canvas. In one embodiment, the distancefunction can be derived from a distance between a pixel and the centerof a germ. FIG. 12 illustrates an example of distance functionmeasurements 1200 in accordance with one embodiment of the presentinvention. FIG. 12 includes a pixel 1210 at point (x,y), a germ 1220with center at point 1225, a first radius r₁ 1230, a second radius r₂1240, distance d₀ 1250 between the pixel and the germ and distance d₁1260 between the pixel and the center of the germ. To include the sizeof a germ in the distance function, two circles centered at the centerof the germ are generated. The diameter of the first circle is theaverage of the germ's width and height, radius r₁ 1230. The diameter ofthe second circle is the germ's diagonal, radius r₂ 1240. The firstdistance function max(0, d₁−r₁) generates moderately rounded borders asshown in FIG. 13. The second distance function d₁/r₂ generates highlyrounded borders as shown in FIG. 14. In another embodiment, thesedistance functions can be combined in a weighted average to vary thedegree of roundedness. Other variations of distance functions may alsobe used, thereby achieving different types of region borders.

In one embodiment, highly condensed visual summaries can be utilized ondevices having monitors or display screens that are relatively smaller,such as PDAs, cell phones, watches, small computers, digital cameras,and other devices. Once the highly condensed visual summary is displayedon these devices, a user could provide input to select the germcorresponding to the associated group. Upon selection of the germ or thegerm's support, the device may playback the group on the screen of thedevice. Other variations of providing the groups or other actions uponthe selection of a germ or its support are possible, all included withinthe scope of the invention.

Highly Condensed Summaries from Images and Photos

The highly condensed summary construction can also be applied to imagesand photos. To find the regions of interest in an image, the regions ofinterest can be determined using general image analysis algorithms,face-detection, algorithms for determining salient parts of stillimages, user input or other object detection algorithms, or othermethods. The user input could select images as a whole or portions of animage (with a mouse or other input device). Once the regions aredetermined, the regions can be laid out as germs with the rest of theimage serving as the support. An examples of a highly condensed summaryof images is illustrated in FIG. 15.

In another embodiment, the regions of interest can be received as inputby a system of the present invention. In this case, the system mayreceive image data or other data associated with a region of interestwithin an image and proceed to layout the regions as germs.

In another embodiment, the layout of the germs taken from images can bedone using different methods than that illustrated in method 500. In oneembodiment, the detected faces are used to create an attractive collageof a collection of faces. In such a visualization, image regions arecombined in a collage and the gaps between regions are filled withpixels from outside the regions of interest in the original images.Instead of regions of activity in video segments that may be used forthe video summaries, faces are the regions of interest. The layoutalgorithm of the video summaries that kept the video segments intemporal order may be replaced with one more appropriate for acollection of faces. While the algorithm for filling gaps remainslargely the same, the layout algorithm is used to produce different filleffects.

Layout

Faces to be included in the stained glass are grouped in rows. In oneembodiment, to avoid having rows with few faces whose photos cannotcover the whole row, faces are divided among rows such that the numberof faces per row only varies by one. In another embodiment, rows witheven and odd number of faces are alternated as much as possible togenerate a less-regular layout.

To avoid having similar-looking faces next to each other (samebackground from the same photo, photos of the same person on the sameday), a random permutation of the order of faces is generated such thatthe temporal distance to horizontal and vertical neighboring faces ismaximized. In yet another embodiment, using visual differences such ascolor histograms may also be used and produces a similar effect to alayout of neighboring photos from different times.

After faces have been assigned to rows, the canvas dimensions aredetermined such that faces have a small percentage of their width andheight as margins. In one embodiment, the faces may have 10% of theirwidths as horizontal margins and 20% of their heights as verticalmargins. The height of each row may initially be set to that of thetallest face in it. Extra vertical space is divided evenly among therows without extending any row past the photo dimensions of a face init. In each row, the horizontal space is distributed in the samefashion. In one embodiment, each face is placed in the center of thecell that was created by distributing vertical and horizontal space andonly shifted if their containing photos cannot not cover the whole cell.When making all faces the same size, that produced a very regularlayout, as illustrated in FIG. 16. To make the collage less regular andthus more pleasing, the size of the faces is varied such that faces thatcover more of their photos (close-ups) are given a larger size in thecollage. Faces can be randomly placed within their cells instead ofcentering them, as illustrated in FIG. 17.

Filling Gaps

For the distance measure between a face and a point, we determine theEuclidian distance between the point and the center of a face andsubtract the radius of the circle that encloses the face. This distancemeasure gives larger faces more coverage and causes slightly curvedborders between areas.

Several variations and guidelines may optionally be implemented whenfilling in gaps of germs in a canvas. A portion of one canvas 1800incorporating some of the guidelines of the present invention isillustrated in FIG. 18. Canvas 1800 includes cells 1810, 1820 and 1830,each having a face, and each having a center 1812, 1822 and 1832,respectively. In the embodiment shown in FIG. 18, the distances fromthree faces to the point 1840 in between them are the same and thus thepoint represents a border among those faces. If the Euclidian distanceis divided by the radius of the circle, that distance measure producesmore rounded boundaries. If a photo contains other faces in addition tothe face, those faces can be removed from the region the photo can coverto avoid displaying partial faces. For example, another face 1850 ispart of the image in cell 1820. Accordingly, the face of 1850 wasremoved from the image in cell 1820. An alternative approach to dealingwith several faces from the same photo would be to use a region thatincludes all of those faces. This approach would be appropriate ifseveral faces from a photo are selected to be included in a canvas. Inyet another embodiment, a cell may contain a partial image of one ormore faces.

In one embodiment, the present invention extracts video regions ofinterest from one or more videos and generates a highly condensed visualsummary of the videos. The video regions of interest are extracted basedon energy, movement, face or other object detection methods, associateddata or external input, or some other feature of the video. In anotherembodiment, the present invention receives or extracts germs of interestfrom images and generates highly condensed visual summaries of theimages. In one embodiment, the region of interest is comprised of twoparts, a germ and a support. The highly condensed visual summary isgenerated by laying out germs on a canvas and then filling the spacesbetween the germs. The result is a visual summary that resembles astained glass window having sections of varying shape. The germs may belaid out by temporal order, color histogram, similarity, according to adesired pattern, size, or some other manner. The people, objects andother visual content in the germs appear larger and become easier tosee. In one embodiment of the present invention, the irregular shapedcell boundaries result from a Voronoi-based algorithm for filling thespaces between the packed germs.

In the preceding description, various aspects of the present inventionare described. However, it will be apparent to those skilled in the artthat the present invention may be practiced with only some or allaspects of the present invention. For purposes of explanation, specificnumbers, materials, and configurations are set forth in order to providea thorough understanding of the present invention. However, it will beapparent to one skilled in the art that the present invention may bepracticed without the specific details. In other instances, well-knownfeatures are omitted or simplified in order not to obscure the presentinvention. Other features, aspects and objects of the invention can beobtained from a review of the figures and the claims. It is to beunderstood that other embodiments of the invention can be developed andfall within the spirit and scope of the invention and claims.

The foregoing description of preferred embodiments of the presentinvention has been provided for the purposes of illustration anddescription. It is not intended to be exhaustive or to limit theinvention to the precise forms disclosed. Obviously, many modificationsand variations will be apparent to the practitioner skilled in the art.The embodiments were chosen and described in order to best explain theprinciples of the invention and its practical application, therebyenabling others skilled in the art to understand the invention forvarious embodiments and with various modifications that are suited tothe particular use contemplated. It is intended that the scope of theinvention be defined by the following claims and their equivalence.

In addition to an embodiment consisting of specifically designedintegrated circuits or other electronics, the present invention may beconveniently implemented using a conventional general purpose or aspecialized digital computer or microprocessor programmed according tothe teachings of the present disclosure, as will be apparent to thoseskilled in the computer art.

Appropriate software coding can readily be prepared by skilledprogrammers based on the teachings of the present disclosure, as will beapparent to those skilled in the software art. The invention may also beimplemented by the preparation of application specific integratedcircuits or by interconnecting an appropriate network of conventionalcomponent circuits, as will be readily apparent to those skilled in theart.

The present invention includes a computer program product which is astorage medium (media) having instructions stored thereon/in which canbe used to program a computer to perform any of the processes of thepresent invention. The storage medium can include, but is not limitedto, any type of disk including floppy disks, optical discs, DVD,CD-ROMs, microdrive, and magneto-optical disks, ROMs, RAMs, EPROMs,EEPROMs, DRAMs, VRAMs, flash memory devices, magnetic or optical cards,nanosystems (including molecular memory ICs), or any type of media ordevice suitable for storing instructions and/or data.

Stored on any one of the computer readable medium (media), the presentinvention includes software for controlling both the hardware of thegeneral purpose/specialized computer or microprocessor, and for enablingthe computer or microprocessor to interact with a human user or othermechanism utilizing the results of the present invention. Such softwaremay include, but is not limited to, device drivers, operating systems,and user applications.

Included in the programming (software) of the general/specializedcomputer or microprocessor are software modules for implementing theteachings of the present invention, including, but not limited to,extracting regions of importance from video and generating highlycondensed visual summaries.

1. A method for generating a highly condensed visual summary of video regions, comprising: determining a dominant group in each of a plurality of video segments; determining a key frame in each of the video segments; defining a germ associated with each dominant group in each of the video segments; laying out the germs on a canvas, each germ associated with a support; and filling in the space of the canvas.
 2. The method of claim 1 wherein determining a dominant region includes: determining a group within each of the plurality of video segments having the largest volume.
 3. The method of claim 1 wherein defining a germ includes: defining a two dimensional shape that encompasses the projection of the dominant group onto the key frame.
 4. The method of claim 3 wherein the two dimensional shape is a rectangle.
 5. The method of claim 3 wherein laying out the germs includes: determining a scale factor to be applied to every germ such that the germs are scaled to the maximum size that fits into the canvas.
 6. The method of claim 3 wherein laying out the germs includes: placing the germs in rows, wherein each row has a height according to the longest germ in the particular row.
 7. The method of claim 1 wherein filling in the space of the canvas includes: assigning a pixel value of each point in the canvas to the same pixel value in the support associated with the germ closest to each point.
 8. The method of claim 7 wherein if the germ closest to the point does not have a support that includes the point, the point is assigned the pixel value of the closest germ with a support that includes the point.
 9. The method of claim 7 wherein the point is assigned a background value if no support includes the point.
 10. A method for generating a highly condensed visual summary of video regions, comprising: determining a germ in each of a plurality of images, the germ containing a region of interest; laying out the germs on a canvas, each germ associated with a support; and filling in the space of the canvas.
 11. The method of claim 1 wherein determining a germ includes: detecting a face in each of the plurality of images.
 12. The method of claim 1 wherein determining a germ includes: receiving user input, the user input associated with a part of an image.
 13. The method of claim 3 wherein determining a germ includes: using an algorithm to determine a salient part of an image.
 14. The method of claim 3 wherein laying out the germs includes: determining a scale factor to be applied to every germ such that the germs are scaled to the maximum size that fits into the canvas.
 15. The method of claim 3 wherein laying out the germs includes: placing the germs in rows, wherein each row has a height according to the longest germ in the particular row.
 16. The method of claim 1 wherein filling in the space of the canvas includes: assigning a pixel value of each point in the canvas to the same pixel value in the support associated with the germ closest to each point.
 17. The method of claim 7 wherein if the germ closest to the point does not have a support that includes the point, the point is assigned the pixel value of the closest germ with a support that includes the point.
 18. The method of claim 7 wherein the point is assigned a background value if no support includes the point. 